Skip to content

feat(falkordb): add missing DocumentStore operations#3292

Merged
bogdankostic merged 4 commits into
deepset-ai:mainfrom
SyedShahmeerAli12:feat/falkordb-missing-operations
May 15, 2026
Merged

feat(falkordb): add missing DocumentStore operations#3292
bogdankostic merged 4 commits into
deepset-ai:mainfrom
SyedShahmeerAli12:feat/falkordb-missing-operations

Conversation

@SyedShahmeerAli12
Copy link
Copy Markdown
Contributor

@SyedShahmeerAli12 SyedShahmeerAli12 commented May 11, 2026

Related Issues

Proposed Changes:

Adds the 8 missing DocumentStore methods to FalkorDBDocumentStore:

  • delete_all_documents()
  • delete_by_filter(filters)
  • update_by_filter(filters, meta)
  • count_documents_by_filter(filters)
  • count_unique_metadata_by_filter(filters, metadata_fields)
  • get_metadata_fields_info()
  • get_metadata_field_min_max(metadata_field)
  • get_metadata_field_unique_values(metadata_field, search_term, size, after)

All methods use OpenCypher queries and reuse the existing _convert_filters helper. The test class now inherits the corresponding Haystack mixin test classes covering the new methods.

How did you test it?

  • Unit tests: hatch run test:unit 13/13 passing
  • Type checking: hatch run test:types no issues
  • Integration tests require a running FalkorDB instance (docker run -p 6379:6379 falkordb/falkordb)

Notes for the reviewer

  • get_metadata_fields_info() samples node property keys and infers Python types since FalkorDB is schema-less (no index mapping API like Elasticsearch)
  • get_metadata_field_unique_values() uses offset-based pagination via the after cursor

Checklist

@SyedShahmeerAli12 SyedShahmeerAli12 requested a review from a team as a code owner May 11, 2026 14:49
@SyedShahmeerAli12 SyedShahmeerAli12 requested review from bogdankostic and removed request for a team May 11, 2026 14:49
@github-actions github-actions Bot added integration:docling integration:falkordb type:documentation Improvements or additions to documentation labels May 11, 2026
@SyedShahmeerAli12 SyedShahmeerAli12 force-pushed the feat/falkordb-missing-operations branch from 6423d1f to cfbc90e Compare May 11, 2026 15:00
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 11, 2026

Coverage report (falkordb)

Click to see where and how coverage changed

FileStatementsMissingCoverageCoverage
(new stmts)
Lines missing
  integrations/falkordb/src/haystack_integrations/document_stores/falkordb
  document_store.py 524-525, 560, 563, 567, 615-616
Project Total  

This report was generated by python-coverage-comment-action

@SyedShahmeerAli12
Copy link
Copy Markdown
Contributor Author

@bogdankostic All fixes are done and CI checks are passing

Copy link
Copy Markdown
Contributor

@bogdankostic bogdankostic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @SyedShahmeerAli12! This PR looks good in general, could you just make sure to use single backticks for in-line code blocks inside doc strings.

Also, would you mind adding some unit tests for the added functionality? We woudl like to keep unit test coverage high.

@SyedShahmeerAli12
Copy link
Copy Markdown
Contributor Author

Fixed the docstring backticks and added unit tests for all new methods

Copy link
Copy Markdown
Contributor

@bogdankostic bogdankostic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good, thanks @SyedShahmeerAli12! :)

@bogdankostic bogdankostic merged commit f5a1a87 into deepset-ai:main May 15, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

FalkorDB: add missing operations

2 participants